@import '../../../../../app/mixins.css';

.wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  width: 100%;
  overflow: initial;
  height: auto;
}

.formSection {
  & .fieldGroup {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    margin-bottom: 16px;
  }

  & .fieldLabel {
    @mixin contentNormal bold;

    align-items: center;
    color: var(--color-maastricht-blue);
    display: flex;
    margin-bottom: 8px;
  }

  & .amountFieldHeader {
    display: flex;
    justify-content: space-between;
    width: 100%;

    & button {
      padding: 0 0 8px;
    }
  }

  & .amountHint {
    @mixin contentSmallest;

    box-sizing: border-box;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    color: var(--color-slate-gray);
    position: relative;
    top: 8px;
    width: 100%;

    & > img {
      margin-left: 5px;
      cursor: pointer;
    }
  }

  & .amountField {
    align-items: center;
    display: flex;
    position: relative;
    width: 100%;

    & .converter {
      position: absolute;
      right: 45px;
      top: var(--vertical-padding-l);
    }

    & .input {
      padding-right: 120px;
      width: 100%;
      height: 48px;
    }
  }

  & .input,
  & .textarea {
    @mixin contentLargest;

    height: 48px;
    padding: 14px;
  }

  & .textarea {
    resize: none;
    overflow: hidden;
    padding-right: 40px;
    padding-left: var(--horizontal-padding-l);

    &:focus ~ .byteCounter {
      opacity: 1;

      &.hide ~ .referenceStatus {
        opacity: 1;
      }
    }

    &:focus ~ .referenceStatus {
      opacity: 0;
    }
  }

  & .referenceStatus {
    bottom: var(--vertical-padding-l);
    position: absolute;
    right: var(--horizontal-padding-l);
  }

  & .referenceField {
    display: flex;
    align-items: center;
    width: 100%;
    position: relative;
  }

  & .selector {
    margin: 13px 0;
  }

  & .processingInfo {
    @mixin contentLargest;

    color: var(--color-slate-gray);
    display: flex;
    margin: 8px 0;

    & .loading {
      color: var(--color-ultramarine-blue);
      margin-left: 5px;
    }

    & > span {
      color: var(--color-maastricht-blue);
      display: flex;
      margin-left: 5px;
    }
  }
}

.feedbackMessage {
  margin-top: 5px;
  max-height: 100% !important;
  min-height: 40px;
}

.byteCounter {
  bottom: 10px;
  opacity: 0;
  position: absolute;
  right: var(--horizontal-padding-l);
  transition: opacity var(--animation-speed-fast) linear;
}

.feedback {
  @mixin contentSmallest;

  box-sizing: border-box;
  color: var(--color-slate-gray);
  display: none;
  justify-content: flex-end;
  padding: 8px 0;
  width: 100%;

  &:global(.error) {
    color: var(--color-burnt-sienna);
  }

  &.show {
    display: flex;
  }

  &.referenceFeedback {
    @mixin contentSmallest;
  }
}

.tooltipText {
  @mixin contentLarge;
}

.show {
  opacity: 1;
  transition: opacity var(--animation-speed-fast) linear var(--animation-delay-standard);
}

.hide {
  opacity: 0 !important;
  transition: opacity var(--animation-speed-fast) linear;
}

.recipientAccountVisual {
  margin-left: -4px;
  margin-top: 4px;
}
